Main Page   Modules   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

IdeBitmap Class Reference

#include <deBitmap.hpp>

Inheritance diagram for IdeBitmap:

Inheritance graph
[legend]
Collaboration diagram for IdeBitmap:

Collaboration graph
[legend]
List of all members.

Public Member Functions

virtual deBoolean Reset ()=0
virtual void Cleanup ()=0
virtual void * GetData (u32 FaceNum=0)=0
 get the raw data contained in the bitmap

virtual long GetWidth ()=0
 get the width of this bitmap

virtual long GetHeight ()=0
 get the height of this bitmap

virtual IdeDriver::BPP GetFormat ()=0
 get the pixelformat of this bitmap

virtual long GetBitDepth ()=0
 get the bitdepth of this bitmap (multiple of 8 almost always)

virtual long GetByteDepth ()=0
 get the byte depth of this bitmap

virtual DWORD GetImageSize ()=0
 get the total amount of memory consumed by this bitmap

virtual long GetScalingFactor ()=0
virtual long GetNumFaces ()=0
virtual deARGB GetColorAt (long X, long Y)=0
 get the color of a certain pixel, given pixel coordinates (returns ARGB format)

virtual void GetFloatColorAt (long X, long Y, deColor &color)=0
 get the color of a certain pixel, given pixel coordinates (using deColor format)

virtual deBoolean IsRenderTarget ()=0
 get whether or not this bitmap is used as a render target

virtual long GetMipLevels ()=0
 retrieve the number of mip levels for this bitmap

virtual deBoolean SetData (void *data, long ByteLength, u32 FaceNum=0)=0
virtual void SetWidth (long width)=0
virtual void SetHeight (long height)=0
virtual void SetFormat (IdeDriver::BPP Format)=0
virtual void SetBitDepth (long depth)=0
virtual void SetImageSize (long size)=0
virtual void SetRenderTarget (deBoolean RenderTarget)=0
virtual void SetColorAt (long X, long Y, deARGB Color)=0
virtual deBoolean SetNumFaces (long NumFaces=1)=0
virtual void SetMipLevels (long MipLevels=-1)=0
virtual deBoolean CopyRect (const IdeBitmap *&Source, deRect *SourceRect, long TargetX, long TargetY)=0
virtual deBoolean SaveToFileSystem (IdeFileSystem *FS, const char *filename)=0
virtual deBoolean SaveToFile (IdeFile *file)=0
virtual void * GetDriverData (long ID)=0
virtual deBoolean SetDriverData (long ID, void *Data, IdeDriver *Driver)=0
virtual deBoolean ConvertGrayScaleToDot3 (long numsamples=7, deFloat amplify=0.0f)=0
 convert this grayscale bitmap into a 32-bit DOT3 bitmap

virtual deBoolean BindGrayScaleAsAlphaMap (IdeBitmap *AlphaMap)=0
 use another bitmap (same height & width) to fill in the alpha channel in this one

virtual deBoolean DownSampleMIP (void *&source, void *target, long SW, long SH, long SP, long TW, long TH, long TP, IdeDriver::BPP SFormat, IdeDriver::BPP TFormat)=0

Protected Member Functions

virtual ~IdeBitmap ()

Detailed Description

A bitmap class for holding 2D image data. Bitmaps can be used for various applications, such as texture-mapping, terrain heightmapping, screenshot storage, etc. The IdeBitmap class provides a means for loading, saving, and manipulating bitmap data. Used with the IdeBitmapProxy class, bitmap data can be stored and loaded with Destiny3D World files, allowing textures and heightmaps to be compiled into them. The pixel formats for an IdeBitmap are the same as those used for textures in IdeDriver::BPP. IdeBitmap stores some texture-specific information, such as render target status, number of faces (6 for a cubemap), and number of MIP levels to generate. IdeBitmap also supports blits from one instance to another, and other compositing and converstion operations such as copying a grayscale bitmap into the alpha channel of another bitmap, and converting a grayscale bump-map into an equivalent dot3 normal map. Related functions: IdeBitmap_CreateBitmap, IdeBitmap_CreateBitmapWithInfo, IdeBitmap_GetRscInterfaceID


Constructor & Destructor Documentation

virtual IdeBitmap::~IdeBitmap   [inline, protected, virtual]
 


Member Function Documentation

virtual deBoolean IdeBitmap::BindGrayScaleAsAlphaMap IdeBitmap *    AlphaMap [pure virtual]
 

use another bitmap (same height & width) to fill in the alpha channel in this one

Implemented in deBitmap.

virtual void IdeBitmap::Cleanup   [pure virtual]
 

Implemented in deBitmap.

virtual deBoolean IdeBitmap::ConvertGrayScaleToDot3 long    numsamples = 7,
deFloat    amplify = 0.0f
[pure virtual]
 

convert this grayscale bitmap into a 32-bit DOT3 bitmap

Implemented in deBitmap.

virtual deBoolean IdeBitmap::CopyRect const IdeBitmap *&    Source,
deRect   SourceRect,
long    TargetX,
long    TargetY
[pure virtual]
 

Blitting function. Blits a source bitmap into this bitmap, clamping the edges. Source bitmap must share the same pixel format as this target.

Implemented in deBitmap.

virtual deBoolean IdeBitmap::DownSampleMIP void *&    source,
void *    target,
long    SW,
long    SH,
long    SP,
long    TW,
long    TH,
long    TP,
IdeDriver::BPP    SFormat,
IdeDriver::BPP    TFormat
[pure virtual]
 

Implemented in deBitmap.

virtual long IdeBitmap::GetBitDepth   [pure virtual]
 

get the bitdepth of this bitmap (multiple of 8 almost always)

Implemented in deBitmap.

virtual long IdeBitmap::GetByteDepth   [pure virtual]
 

get the byte depth of this bitmap

Implemented in deBitmap.

virtual deARGB IdeBitmap::GetColorAt long    X,
long    Y
[pure virtual]
 

get the color of a certain pixel, given pixel coordinates (returns ARGB format)

Implemented in deBitmap.

virtual void* IdeBitmap::GetData u32    FaceNum = 0 [pure virtual]
 

get the raw data contained in the bitmap

Implemented in deBitmap.

virtual void* IdeBitmap::GetDriverData long    ID [pure virtual]
 

Implemented in deBitmap.

virtual void IdeBitmap::GetFloatColorAt long    X,
long    Y,
deColor   color
[pure virtual]
 

get the color of a certain pixel, given pixel coordinates (using deColor format)

Implemented in deBitmap.

virtual IdeDriver::BPP IdeBitmap::GetFormat   [pure virtual]
 

get the pixelformat of this bitmap

Implemented in deBitmap.

virtual long IdeBitmap::GetHeight   [pure virtual]
 

get the height of this bitmap

Implemented in deBitmap.

virtual DWORD IdeBitmap::GetImageSize   [pure virtual]
 

get the total amount of memory consumed by this bitmap

Implemented in deBitmap.

virtual long IdeBitmap::GetMipLevels   [pure virtual]
 

retrieve the number of mip levels for this bitmap

Implemented in deBitmap.

virtual long IdeBitmap::GetNumFaces   [pure virtual]
 

Implemented in deBitmap.

virtual long IdeBitmap::GetScalingFactor   [pure virtual]
 

Implemented in deBitmap.

virtual long IdeBitmap::GetWidth   [pure virtual]
 

get the width of this bitmap

Implemented in deBitmap.

virtual deBoolean IdeBitmap::IsRenderTarget   [pure virtual]
 

get whether or not this bitmap is used as a render target

Implemented in deBitmap.

virtual deBoolean IdeBitmap::Reset   [pure virtual]
 

Implemented in deBitmap.

virtual deBoolean IdeBitmap::SaveToFile IdeFile   file [pure virtual]
 

Implemented in deBitmap.

virtual deBoolean IdeBitmap::SaveToFileSystem IdeFileSystem   FS,
const char *    filename
[pure virtual]
 

Implemented in deBitmap.

virtual void IdeBitmap::SetBitDepth long    depth [pure virtual]
 

Implemented in deBitmap.

virtual void IdeBitmap::SetColorAt long    X,
long    Y,
deARGB    Color
[pure virtual]
 

Implemented in deBitmap.

virtual deBoolean IdeBitmap::SetData void *    data,
long    ByteLength,
u32    FaceNum = 0
[pure virtual]
 

Implemented in deBitmap.

virtual deBoolean IdeBitmap::SetDriverData long    ID,
void *    Data,
IdeDriver   Driver
[pure virtual]
 

Implemented in deBitmap.

virtual void IdeBitmap::SetFormat IdeDriver::BPP    Format [pure virtual]
 

Implemented in deBitmap.

virtual void IdeBitmap::SetHeight long    height [pure virtual]
 

Implemented in deBitmap.

virtual void IdeBitmap::SetImageSize long    size [pure virtual]
 

Implemented in deBitmap.

virtual void IdeBitmap::SetMipLevels long    MipLevels = -1 [pure virtual]
 

Implemented in deBitmap.

virtual deBoolean IdeBitmap::SetNumFaces long    NumFaces = 1 [pure virtual]
 

Implemented in deBitmap.

virtual void IdeBitmap::SetRenderTarget deBoolean    RenderTarget [pure virtual]
 

Implemented in deBitmap.

virtual void IdeBitmap::SetWidth long    width [pure virtual]
 

Implemented in deBitmap.


The documentation for this class was generated from the following file:
Generated on Mon Sep 12 20:13:05 2005 for Destiny3D by doxygen1.3-rc3